ChromaKey: Towards Extensible Reflective Architectures
نویسندگان
چکیده
Reflection allows programmers to inspect and modify the structural and runtime properties of a software system. Traditionally, the architecture of a reflective system has been a monolithic part of the runtime system, featuring a fixed semantics. Mirror-based reflective architectures decouple the base-level entities from their meta-level counterparts. In this work, we explore ChromaKey, a design to go yet one step further. ChromaKey enables the user to extend the reflective system in two dimensions: the semantics of reflective objects and reflection on syntax extensions of the host language. The first axis decouples the reflective system from a specific mirror interface. The second axis allows existing hierarchies of reflective objects to be extended. The key component is a generic reflecting component that “parses” class definitions according to a given semantics, specified by generic factories (Object Algebras).
منابع مشابه
A Preliminary Collection of Reflective Critics for Layered Agent Architectures
How can we build more robust reasoning systems? One approach is to build systems as layered agent architectures where each layer observes the activities occurring in the layers beneath, and uses knowledge about how to interpret these observations to control and debug those activities. Architectures with such ‘towers of reflection’ are uesd because it is often difficult to assure perfect operati...
متن کاملTowards a Reflective Component-based Middleware Architecture
Current middleware is inflexible and monolithic and fails to address emerging needs for adaptation to changing requirements. As a solution, we propose that middleware be built as a reflective and component-based system. Our architecture is based on component frameworks and component framework-specific meta-interfaces and leads to extensible, composable, and dynamically flexible middleware syste...
متن کاملMirror-based reflection in AmbientTalk
This paper introduces a novel mechanism to perform intercession (a form of reflection) in an objectoriented programming language with the goal of making the language extensible from within itself. The proposed mechanism builds upon a mirror-based architecture, leading to a reusable reflective application programming interface that cleanly separates interface from implementation details. However...
متن کاملA Framework for Simulating Heterogeneous Virtual Processors Dale
This paper examines the layered software modules of a heterogeneous multiprocessor simulator and debugger, and the design patterns that span these modules. Lucent's LUxWORKS simulator and debugger works with multiple processor architectures. Its modeling infrastructure, processor models, processor monitor / control, hardware control, vendor simulator interface and Tcl/Tk extension layers are sp...
متن کاملA Framework for Simulating Heterogeneous Virtual Processors
This paper examines the layered software modules of a heterogeneous multiprocessor simulator and debugger, and the design patterns that span these modules. Lucent’s LUxWORKS simulator and debugger works with multiple processor architectures. Its modeling infrastructure, processor models, processor monitor / control, hardware control, vendor simulator interface and Tcl/Tk extension layers are sp...
متن کامل